// 上传模块

// 调用方法：
// $.post('http://http://api.juzhen05.com/admin/matrixbox/upload', {
//     token:token,
//     id: body.id,    // 自动升序ID
//     name: body.name, // 姓名
//     href: body.href, // 地址
//     img: body.img,// 图片URL地址
//     keyword: body.keyword,// 关键字
//     love: body.love, // 点赞
//     planner: body.planner,// 策划人
//     FE: body.FE,// 前端
//     BE: body.BE,// 后端
//     designer: body.designer,// 设计
//     wenan: body.wenan// 文案
// }, cb) 

var fs = require('fs')
var path = require('path')
var routerApi = require('../../../utils/routeString.js')(__filename, __dirname);

var jwt = require('../../../utils/jwt.js')
var MartixBox = require('../dal/matrixbox.js')
var uploadMedia = require('../../../utils/uploadMedia.js')


const rmFile = (path) => {
    if (fs.existsSync(path)) {
        fs.unlink(path, function () {
            
        });
    }
}

server.post({ path: routerApi, name: routerApi }, async function (req, res, next) {
    var body = req.body || req.query;

    if (!body.token) {
        return res.send({ code: 0, msg: "参数错误" })
    }

    // 首先上传图片,获取图片Url地址
    var urls = [];
    for (var i in req.files) {
        if (req.files[i]) {
            // return res.send({ code: 0, msg: '图片数据未接收到' });
            var imgBuffer = fs.readFileSync(req.files[i].path);
            rmFile(req.files[i].path); // 删除缓存文件
            var url = uploadMedia.uploadImg(imgBuffer, 'matrixbox');
            urls.push(url);
        }
    }

    try {

        // 上传图片
        var bodyData = {
            id: body.id,    // 自动升序ID
            name: body.name, // 姓名
            href: body.href, // 地址
            img: urls.join(';'),// 图片URL地址
            keyword: body.keyword,// 关键字
            // love: body.love||, // 点赞
            planner: body.planner,// 策划人
            FE: body.FE,// 前端
            BE: body.BE,// 后端
            designer: body.designer,// 设计
            wenan: body.wenan,// 文案
            ontime: body.ontime, // 上线时间
            starttime: body.starttime //开始时间
        }

        var mb = new MartixBox(bodyData);
        let jwtData = await jwt.decode(body.token);
        let result =await mb.add(); // affectedRows
        return res.send({ code: 1, msg: "条目添加成功" });
    } catch (error) {
        // console.log(error);
        res.send({ code: 0, msg: error });
    }


});

